/*
 * To change this template, choose Tools | Templates and open the template in
 * the editor.
 */

package mundo;

/**
 * Robot class with constructor and robot atributes. These include where he is
 * heading (direction he faces) and the position he has, if he is painting and
 * if he has picked an object.
 * 
 * @author JuanFer
 */
public class Robot
{

    /**
     * North
     */
    public static final int north = 0;
    /**
     * South
     */
    public static final int south = 1;
    /**
     * West
     */
    public static final int west = 2;
    /**
     * East
     */
    public static final int east = 3;

    /**
     * Coordinate in x axis.
     */
    public int xCoordinate;
    /**
     * Coordinate in y axis.
     */
    public int yCoordinate;

    /**
     * Directino he haeds to, north, west, south, east.
     */
    public int headsTo;

    /**
     * If he has picked an object.
     */
    private boolean hasObj;

    /**
     * If he is currently painting.
     */
    private boolean isPainting;

    /**
     * Constructor.
     * 
     * @param x
     * @param y
     * @param heads
     */
    public Robot(int x, int y, int heads)
    {
	xCoordinate = x;
	yCoordinate = y;
	headsTo = heads;

	hasObj = false;
	isPainting = false;
    }

    /**
     * Returns hasObj
     * 
     * @return
     */
    public boolean getHasObj()
    {
	return hasObj;
    }

    /**
     * Sets has object.
     * 
     * @param hasObj
     */
    public void setHasObj(boolean hasObj)
    {
	this.hasObj = hasObj;
    }

    /**
     * Returns headsTo.
     * 
     * @return
     */
    public int getHeadsTo()
    {
	return headsTo;
    }

    /**
     * Sets headsTo.
     * 
     * @param headsTo
     */
    public void setHeadsTo(int headsTo)
    {
	this.headsTo = headsTo;
    }

    /**
     * returns isPainting.
     * 
     * @return
     */
    public boolean isPainting()
    {
	return isPainting;
    }

    /**
     * Sets isPainting.
     * 
     * @param isPainting
     */
    public void setIsPainting(boolean isPainting)
    {
	this.isPainting = isPainting;
    }

    /**
     * Gets x coordinate.
     * 
     * @return
     */
    public int getxCoordinate()
    {
	return xCoordinate;
    }

    /**
     * Sets x coordinate.
     * 
     * @param xCoordinate
     */
    public void setxCoordinate(int xCoordinate)
    {
	this.xCoordinate = xCoordinate;
    }

    /**
     * Gets y coordinate.
     * 
     * @return
     */
    public int getyCoordinate()
    {
	return yCoordinate;
    }

    /**
     * Sets y coordinate.
     * 
     * @param yCoordinate
     */
    public void setyCoordinate(int yCoordinate)
    {
	this.yCoordinate = yCoordinate;
    }

}
